低代码与无代码开发的四个安全隐患
低代码与无代码开发的四个安全隐患是:
缺乏可见性
低代码和无代码开发的最大挑战之一是,企业可能很难掌握他们的员工在构建什么。使用外部开发的平台总是会有可视性问题。企业只是在使用软件,但不知道源代码是怎样的、相关的安全隐患或者平台已经完成的测试情况和出现的问题。Juniper Networks的研究主管穆尼尔·哈尔德(Mounir Hahad)表示,部分原因与影子it的整个问题有关。“我们听到的大多数影子IT都与影子开发有关,”他说。“通常,当员工在公司IT部门建立公共云基础架构(无论是存储还是计算)时,通常会伴随一些允许在云中处理数据的应用程序。”内部低代码平台会给企业带来同样的可见性问题。
这个问题可以通过向供应商索要一份SBOM(软件物料清单)来缓解。SBOM能够提供关于其所有的软件组件信息以及其相关漏洞。SBOM的使用数量正在上升,最近Linux Foundation的研究显示,78%的组织计划在2022年使用SBOM。这表示,SBOM的使用正在逐渐成熟,行业对操作、流程和工具还有很大的优化空间。
不安全的代码
和可视性相对应的是代码的安全性问题。低代码和无代码平台依然会有代码存在:只不过这些是抽象的代码,让终端用户可以直接使用预设的代码功能。这对非开发者来说无疑是一个福音,因为他们不必再自己写代码了。但是问题就在,使用的代码可能是不安全的,并且可能会通过低代码和无代码平台跨组织、跨应用进行传播。
解决方式之一是和平台供应商合作,要求平台中使用代码的安全扫描结果。SAST和DAST的扫描结果能够给客户一定的保证,确保他们不是在复制那些不安全的代码。在组织控制之外创建的代码不是什么新鲜事,在开源软件大量使用的时代十分常见。有近98%的组织使用开源代码,同时还伴随着如基础设施即代码(infrastructure-as-code, IaC)模板等其他供应链相关威胁。
另一个需要考虑的方面,在于许多低代码和无代码平台通常都是SaaS化提供。这就需要向供应商要求像ISO、SOC2、FedRAMP等其他行业证明。这些能够给组织的运营和安全控制提供更进一步的保障。SaaS应用本身也会呈现出许多安全风险,需要适当的治理和安全控制。如果对使用的SaaS应用和平台不进行管制,组织就可能会暴露在风险之下。如果低代码和无代码平台开发的应用会暴露组织或者客户的敏感数据,就会加剧这种风险。
业务中断
从业务连续性角度看,依赖低代码和无代码平台的服务可能在平台发生中断时,打断自身的业务。组织需要和包括低代码和无代码平台的供应商,为业务关键应用建立SLA。在许多情况下,企业可能看不到低代码或无代码平台供应商提供的代码和安全控制。为了了解这些供应商的安全性,公司需要依靠他们已经拥有的工具——第三方安全审计、安全和合规性认证、服务水平协议和网络安全保险。一些低代码供应商正试图让事情变得更加透明。
转移到没有这种透明度的低代码和无代码开发平台会从安全团队那里拿走一些控制权。这并不一定意味着安全性会受到影响。如果用户想要一个应用程序,最好使用标准平台来构建它,而不是自己开发代码。如果在他们的组件中发现了漏洞,平台供应商将推出一个补丁,它将更新所有使用这些组件的应用程序。
无法监管的影子IT
由于低代码和无代码平台允许没有开发背景的人快速创建应用,这就会导致影子IT泛滥。影子IT在业务部门和人员创建的应用同时暴露在内部和外部的时候发生。这些应用可能有组织、客户或者监管的敏感数据,从而一旦发生泄漏事件,就会对组织形成一系列的负面影响。